import Vue from 'vue'
import VueRouter from 'vue-router'
import Login from '@/components/Login.vue'
import Home from '@/components/Home.vue'
import Welcome from '@/components/Welcome'
import Users from '@/components/user/User'
import Rights from '@/components/power/Rights'
import Roles from '@/components/power/Roles'
import Cate from '@/components/goods/Cate'
import Params from '@/components/goods/Params'
import List from '@/components/goods/List'
import Add from '@/components/goods/Add'
import Order from '@/components/order/Order'
import Report from '@/components/report/Report'
Vue.use(VueRouter)

const routes = [
  //登录组件的注册
      {
        path: '/login',
        component:Login
      },
  //Home主页组件路由规则
      {
        path:'/home',
        component:Home,
        redirect:'/welcome',
        children:[
          {
            path:'/welcome',
            component:Welcome,
          },
          {
            path:'/users',
            component:Users,
          },
          {
            path:'/rights',
            component:Rights,
          },
          {
            path:'/roles',
            component:Roles,
          },
          {
            path:'/categories',
            component:Cate,
          },
          {
            path:'/params',
            component:Params,
          },
          {
            path:'/goods',
            component:List,
          },
          {
            path:'/goods/add',
            component:Add,
          },
          {
            path:'/orders',
            component:Order
          },
          {
            path:'/reports',
            component:Report
          },

        ]
      },
  //路由的重定向
      {
        path: '/',
        redirect:'/login'
      }
]

const router = new VueRouter({
  routes
})
//挂载路由导航守卫
    router.beforeEach((to, from, next) => {
      // to是要去哪 from从哪来 next放不放行
      if(to.path === '/login') return next();
      //获取登录token
      const tokenStr = window.sessionStorage.getItem('token')
      if(!tokenStr) {
        next('/login')
      }else{
        next()
      }

    })
export default router
